1. Technical Field
This invention relates generally to a multi-media data storage and retrieval system, such as a video-on-demand system, which can provide multiple data streams to one or more clients across a network. More particularly, the invention provides a system and method which allows a plurality of isochronous high bandwidth video data streams to be reliably and efficiently stored and retrieved from a plurality of media servers. In the multi-media data storage and retrieval technical field, video-on-demand represents the most technically demanding case.
2. Related Information
There is an increasing need to provide "video-on-demand" services for such applications as cable television and hotel services. Such applications require high-bandwidth, isochronous (time-guaranteed delivery) data streams over a sustained period of time with high reliability. As an example, hotels conventionally dedicate multiple analog video cassette recorders (VCRs) to provide "on-demand" movie viewing for hotel guests. Each VCR can play only one movie at a time, and thus the number of concurrent movies which can be played is limited by the number of VCRs. Not only is a VCR for each movie played required, but the hotel must estimate the number of copies of each movie required to satisfy a broad array of anticipated viewers. Additionally, the number of VCRs provided must be large enough to support the maximum number of viewers who will concurrently view different movies. This dedication of units and ancillary support is costly. Moreover, VCRs may be unavailable for periods of time during which tapes are rewound and the like.
It would be desirable to provide a video on-demand system which makes much more efficient use of data storage devices and their interconnections. However, newer digital video-on-demand systems are expensive, lack reliability, and generally require a wasteful dedication of storage and computing facilities. For example, bottlenecks in various points of such systems render large amounts of data bandwidth unusable. Thus, they suffer from some of the same problems as conventional analog systems.
Transmitting a single digital real-time video stream which is MPEG encoded creates a requirement to provide 200 kilobyte/second (KB/sec) data transfer rates for two or more hours. Higher quality video streams require rates as high as 1 megabyte per second (MB/sec) or higher. In a network in which multiple video streams must be provided, this creates a requirement to reliably provide many megabytes of isochronous data streams. The loss of a few hundred milliseconds of data will cause an unacceptable disruption in service.
Any video-on-demand system providing multiple data streams should preferably be able to detect and correct errors caused by failures or data aberrations (e.g., disk drive failures or parity errors). Thus, hardware and/or data redundancy and various error correcting schemes are needed to ensure data integrity and availability. However, the use of a "brute-force" disk mirroring scheme or other similarly unsophisticated method is unacceptably expensive in a video-on-demand system, because the amount of data storage could easily extend into terabytes of data, currently out of the price range for many applications. Finally, many conventional analog and newer digital systems do not "scale up" well in terms of bandwidth. Therefore, there remains a need for providing reliable, high-bandwidth video data storage and retrieval at a low price. Conventional systems have not effectively addressed these needs.